/*
 * @Date: 2023-03-14 14:06:50
 * @LastEditTime: 2023-03-15 10:00:33
 * @FilePath: /hua-fei-chong-zhi/src/router/importGlob.ts
 * 介绍:
 */
import { RouteRecordRaw } from "vue-router";
// export function importViews() {
//   const views = import.meta.glob(
//     ["@@/views/**/*.vue", "@@/views/**/router.meta.ts"],
//     { eager: true }
//   );
//   const routes: Array<RouteRecordRaw> = [];
//     for (let key in views) {
//     const pathInfo = pathPipe(key);
//     if (!pathInfo?.isPage) return;
//     generatedRouter(pathInfo);
//   }
//   return routes;
//   function generatedRouter(pageInfo: PathInfo) {
    
//   }

//   /**查询有效路径 */
//   function pathPipe(fulPath: string): PathInfo | undefined | null {
//     const config = {
//       /**非页面文件黑名单 */
//       noPage: ["components/"],
//     };
//     const _pi = fulPath.indexOf("views/");
//     if (_pi == -1) return;
//     /**查询路径 */
//     const path = fulPath.slice(_pi);
//     /**文件名称 */
//     const fileName = path.slice(
//       path.lastIndexOf("/") + "/".length,
//       path.lastIndexOf(".")
//     );
//     /**路径数组 */
//     const pathArr = path.split("/");
//     /**文件夹名称 */
//     const folderName = pathArr[pathArr.length - 2];
//     /**文件后缀 */
//     const fileSuffix = path.slice(path.lastIndexOf(".") + ".".length);
//     /**是page */
//     let isPage = true;
//     //* 如果后缀为vue而且文件夹名等于文件名则是页面文件
//     if (fileSuffix === "vue" && pathArr[pathArr.length - 2] == fileName) {
//       isPage = true;
//     }
//     //* 非页面文件黑名单
//     for (let val of config.noPage) {
//       if (new RegExp(val).test(path)) isPage = false;
//     }
//     const res: PathInfo = {
//       /**文件名称 */
//       fileName,
//       /**文件后缀 */
//       fileSuffix,
//       /**文件夹名称 */
//       folderName,
//       /**有效路径 */
//       path,
//       /**完整路径 */
//       fulPath,
//       /**路径数组 */
//       pathArr,
//       /**是否为页面文件 */
//       isPage,
//     };
//     return res;
//   }
//   interface PathInfo {
//     /**文件名称 */
//     fileName: string;
//     /**文件后缀 */
//     fileSuffix: string;
//     /**文件夹名称 */
//     folderName: string;
//     /**有效路径 */
//     path: string;
//     /**完整路径 */
//     fulPath: string;
//     /**路径数组 */
//     pathArr: string[];
//     /**是否为页面文件 */
//     isPage: boolean;
//   }
// }
export function importRouterModules() {
  const routes: Array<RouteRecordRaw> = [];
  const modules = import.meta.glob("./module/**.ts", { eager: true });
  Object.values(modules).forEach((val: any) => {
    const module: Array<RouteRecordRaw> = val.default;
    routes.push(...module);
  });
  return routes;
}
